package com.zzyl.service;

import com.zzyl.dto.ResourceDto;
import com.zzyl.vo.MenuVo;
import com.zzyl.vo.ResourceVo;
import com.zzyl.vo.TreeVo;

import java.util.List;

/**
 * @Description ResourceService
 * @Author luohai
 * @Date 2024-10-23
 */
public interface ResourceService {
    /**
     * 资源列表
     * @param resourceDto
     * @return
     */
    List<ResourceVo> resourceList(ResourceDto resourceDto);

    /**
     * @param resourceDto 资源对象
     * @return
     *  资源树形
     */
    TreeVo resourceTreeVo(ResourceDto resourceDto);

    /**
     * 资源添加
     * @param resourceDto
     * @return
     */
    Boolean createResource(ResourceDto resourceDto);

    /**
     * 资源修改
     * @param resourceDto
     * @return
     */
    Boolean resourceModification(ResourceDto resourceDto);

    /**
     * 启用禁用
     * @param resourceDto
     * @return
     */
    Boolean enableDisable(ResourceDto resourceDto);

    /**
     * 删除菜单
     * @param resourceNo
     * @return
     */
    void deleteResource(String resourceNo);

    /**
     * @return
     *  左侧菜单
     */
    List<MenuVo> menus(Long userId);
}
